package middleware

import (
	"fmt"
	"github.com/gin-gonic/gin"
)

func Middleware01(context *gin.Context) {
	fmt.Println("middleware01调用--------开始")
	//中间件中进行调用下一个
	context.Next()
	fmt.Println("middleware01调用--------结束")
}

// gin.HandlerFunc 等价于  func(*Context)函数
// 所以MiddleWare02就必须有个返回值，并且返回值是一个函数

func Middleware02() gin.HandlerFunc {

	return func(context *gin.Context) {
		fmt.Println("middleware02调用--------开始")
		context.Next()
		fmt.Println("middleware02调用--------结束")
	}

}

func Middleware03(context *gin.Context) {
	fmt.Println("middleware03调用--------开始")

	if 4 > 2 {
		//终止中间件链条
		context.Abort()
	}

	//中间件中进行调用下一个
	context.Next()

	fmt.Println("middleware03调用--------结束")
}
